Computers and computer software make up a very important part of modem life and business. In today's business environment, for any organization to stay competitive, it is imperative that it uses computers and software applications to manage data, customers, employees, finances, etc. Generally speaking, organizations use specialized application to use one or more of their various operations.
For example, businesses use accounting software to manage their accounting, tax, payroll, and other accounting related functions, whereas customer relationship management (CRM) software is used to manage customer accounts, orders, etc. Most businesses implement their core enterprise applications such as enterprise resource planning (ERP) and CRM at different times, using products developed by different vendors. This results in the problem of how to integrate disparate systems in most cost effective, efficient and effective manner.
For example, a business may be using an ERP system to manage inventory and a separate CRM system to manage customer data. In such a scenario, when a new customer account is created in the CRM system, its attached item order may not be automatically and immediately reflected in the ERP system. Similarly, when delivery of an item is received in the inventory system, it may not be automatically applied to backlog of orders received in the CRM system. Such lack of communication and data sharing between various applications may result in considerable loss of efficiency and competitiveness for businesses.
One solution to the problem of integrating such disparate applications is to custom develop solutions that facilitate communication and sharing of data between such disparate applications. For example, an integration developer may develop custom application that interacts with both of the CRM and the ERP to keep them apprised of any changes in the data that need to be shared among them. However, developing and constantly updating such custom integration application is time consuming and costly.
Several business integration products, such as Microsoft™ BizTalk™, Tivoli™, etc., provide framework to integrate a number of business applications. However, such integrations products are technically complex and because they require special expertise on the part of the end user business, they increase the total cost of ownership (TCO) on the part of small to medium business entities using such products. Therefore, there is a need to provide an application integration framework that allows for integrating several business applications in highly automated and yet cost effective manner.